TomP2P is a P2P-based high performance key-value pair storage library. Each peer has a table (either disk-based or memory-based) to store its values. A single value can be queried or updated with a secondary key. The underlying communication framework uses Java NIO to handle many concurrent connections.
| Tags | P2P Communication key-value pair NIO storage |
|---|---|
| Licenses | Apache 2.0 |
| Operating Systems | any Java |
| Implementation | Java 6+ |
Recent releases


Release Notes: This release upgrades to the latest JDBM, switches to logback for logging, adds support for Bloom filters in get() and digest(), better handles "connection reset by peer", fixes PeerConnection, improves success evaluation for futures, and adds examples for similarity search, distributed segment trees, and Bloom filters.


Release Notes: TCP options set in try-catch to suppress warnings if an option could not be set. Suppresses "connection reset by peer" in Windows. Exposes storage.map() to the user. Fixes CacheMap and ConcurrentCacheMap. Improved bootstrapping, which includes connecting to random peers. Fixes tracker replication. Adds more examples.


Release Notes: This release removes BerkeleyDB, switches to JDBM, rewrites storage, removes Guava, switches back to Java collections, adds build-pattern to create peers, switches from Java5 to Java6, fixes many bugs, adds new examples, and includes further preparation for MapReduce.


Release Notes: Initial preparation for MapReduce implementation; changes for SimGrid integration; a potential peer discovery fix for multiple interfaces. TomP2P-4.0.7-dist.zip now contains all the required dependencies.


Release Notes: Better timeout handling; uses Peer.setFutureTimeout() to set a timeout for any future object. Fixes in tracker code and peer exchange. DistributedHashHashMap.parallelRequests() is exposed (was DistributedHashHashMap.loop()); there is an example in TestDHT.testCompareAndPut() of how to use it. There is a flag to enforce UDP or TCP for RPC calls. Updated to the latest Netty to fix an issue with Android.
A tool that processes log files from various applications using Hadoop, Flume, and HBase.